package com.baige.api.app.sdk.response;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;

/**
 * 账户提现信息返回对象
 * @author wulg
 * @date 2018/12/13.
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value = "AccountCashOutResponse", description = "账户提现信息返回对象")
public class UserAccountCashOutResponse implements Serializable
{
    @ApiModelProperty(value = "用户账户id")
    private String id;
    @ApiModelProperty(value = "账户状态(1.待处理  2.提现成功 3.提现失败)")
    private int accountCashOutStatus;
    @ApiModelProperty(value = "创建时间")
    private long createTime;
    @ApiModelProperty(value = "账户提现金额")
    private BigDecimal accountCashOutAmount;
    @ApiModelProperty(value = "账户提现流水")
    private List<UserAccountCashOutFlowResponse> flowResponseList;

    @Data
    @EqualsAndHashCode(callSuper = false)
    @Accessors(chain = true)
    @ApiModel(value = "UserAccountCashOutFlowResponse", description = "账户提现流水信息返回对象")
    public static class UserAccountCashOutFlowResponse implements Serializable
    {
        @ApiModelProperty(value = "账户提现流水id")
        private String id;
        @ApiModelProperty(value = "应提现金额")
        private BigDecimal shouldRefundMoney;
        @ApiModelProperty(value = "退款渠道(1.支付宝 2.微信 3.微信公众号)")
        private int refundChannel;
        @ApiModelProperty(value = "退款状态(1.退款失败  2.退款成功)")
        private int refundStatus;
        @ApiModelProperty(value = "备注")
        private String memo;
    }
}
